
/** page分页接受参数 */
export default class PageParamRequest  {
  /** 当前页(必传) */
  page!:string | number;
  /** 当前页条数(必传) */
  rows!:string | number;
  /** 查询条件 查询字段是驼峰转换后的值注意大小写（非必传） */
  filters?:string;
  /** 排序字段（非必传） */
  sidx?:string;
  /** 排序方式asc,desc（非必传） */
  sort?:string;


  /**通过JSONObject创建实例对象 */
  public static getInstanceByJSONObj(jsonObj:any):PageParamRequest{
    let instance=new PageParamRequest()
    return Object.assign(instance, jsonObj)
  }


  /** 通过属性参数创建实例对象 */
  public static getInstanceByParam(page:string | number,rows:string | number
                                   ,filters:string,sidx:string
                                   ,sort:string){
    let instance=new PageParamRequest()
    instance.page=page;
    instance.rows=rows;
    instance.filters=filters;
    instance.sidx=sidx;
    instance.sort=sort;
    return instance
  }


  /** 类属性的申明静态变量(适用于直接用到Class.fieldName的场景) */
   static fieldNames={
       /**当前页(必传)*/
      page:"page",
      /**当前页条数(必传)*/
      rows:"rows",
      /**查询条件 查询字段是驼峰转换后的值注意大小写（非必传）*/
      filters:"filters",
      /**排序字段（非必传）*/
      sidx:"sidx",
      /**排序方式asc,desc（非必传）*/
      sort:"sort" }
}

